package com.rhzy.wnhc.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDateTime;
import java.io.Serializable;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import static com.baomidou.mybatisplus.annotation.IdType.AUTO;
import static com.baomidou.mybatisplus.annotation.IdType.INPUT;

/**
 * <p>
 * 
 * </p>
 *
 * @author wen
 * @since 2020-02-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel
public class TPerson extends Model<TPerson> {

    private static final long serialVersionUID = 1L;
    //=====================================基础信息=====================================
    @TableId(value = "id",type=AUTO)
    private Integer id;
    /**
     * 姓名
     */
    @NotBlank(message = "姓名不能为空")
    @ApiModelProperty(value = "姓名",required = true)
    private String name;

    /**
     * 身份证
     */
    @TableId(value = "id_card",type=INPUT)
    @NotBlank(message = "身份证不能为空")
    @ApiModelProperty(value = "身份证",required = true)
    private String idCard;

    /**
     * 电话
     */
    @NotBlank(message = "电话不能为空")
    @ApiModelProperty(value = "电话",required = true)
    private String phone;

    /**
     * 家庭住址编码
     */
    @NotBlank(message = "家庭住址编码不能为空")
    @ApiModelProperty(value = "家庭住址编码",required = true)
    private String addressCode;

    /**
     * 家庭住址（中文到村）
     */
    @NotBlank(message = "家庭住址不能为空")
    @ApiModelProperty(value = "家庭住址（中文到村）",required = true)
    private String addressValue;

    /**
     * 家庭详细地址（村之后的组及门牌号等）
     */
    @ApiModelProperty(value = "家庭详细地址（村之后的组及门牌号等）")
    private String addressInfo;

    /**
     * 民族
     */
    @NotBlank(message = "民族不能为空")
    @ApiModelProperty(value = "民族",required = true)
    private String nation;

    /**
     * 文化程度
     */
    @ApiModelProperty(value = "文化程度",required = true)
    @NotBlank(message = "文化程度不能为空")
    private String education;

    /**
     * 是否贫困劳动力1是 0否
     */
    @NotNull(message = "是否贫困劳动力不能为空")
    @ApiModelProperty(value = "是否贫困劳动力1是 0否",required = true)
    private Boolean poorStatus;

    /**
     * 健康状况
     */
    @ApiModelProperty(value = "健康状况",required = true)
    @NotBlank(message = "健康状况")
    private String healthStatus;



    //=====================================就业信息=====================================

    /**
     * 就业区域
     */
    @NotBlank(message = "就业区域不能为空")
    @ApiModelProperty(value = "就业区域")
    private String jobArea;
    /**
     * 企业名称
     */
    @NotBlank(message = "企业名称不能为空")
    @ApiModelProperty(value = "企业名称" ,required = true)
    private String companyName;

    /**
     * 企业地址代码
     */
    @NotBlank(message = "企业地址代码不能为空")
    @ApiModelProperty(value = "企业地址代码",required = true)
    private String companyAddressCode;

    /**
     * 企业地址中文值
     */
    @NotBlank(message = "企业地址中文值不能为空")
    @ApiModelProperty(value = "企业地址中文值",required = true)
    private String companyAddressValue;
    /**
     * 企业地址具体地点（到街道）
     */
    @ApiModelProperty(value = "企业地址具体地点（到街道）")
    private String companyAddressInfo;

    /**
     * 企业联系电话
     */
    @ApiModelProperty(value = "企业联系电话")
    private String companyPhone;

    /**
     * 就业行业
     */
    @NotBlank(message = "就业行业不能为空")
    @ApiModelProperty(value = "就业行业")
    private String jobIndustry;


    //=============================返乡信息======================

    /**
     * 是否春节返乡人员1是0否
     */
    @NotNull(message = "是否春节返乡人员不能为空")
    @ApiModelProperty(value = "是否春节返乡人员1是0否",required = true)
    private Boolean backHomeStatus;

    /**
     * 是否有本地就业意愿（是/否）
     */
    @NotNull(message = "是否有本地就业意愿（是/否）")
    @ApiModelProperty(value = "是否有本地就业意愿（是/否）",required = true)
    private Boolean localJobStatus;


    /**
     *是否武汉返乡人员
     */
    @NotNull(message = "是否武汉返乡人员不能为空")
    @ApiModelProperty(value = "是否武汉返乡人员",required = true)
    private Boolean isHubeiBack;
    /**
     * 就业意愿
     */
    @ApiModelProperty(value = " 就业意愿")
    @NotBlank(message = "就业意愿不能为空")
    private String jobWish;

    /**
     * 是否有外出务工乘车需求1是0否
     */
    @NotNull(message = "是否有外出务工乘车需求不能为空")
    @ApiModelProperty(value = "是否有外出务工乘车需求1是0否",required = true)
    private Boolean outTarinStatus;

    /**
     * 小程序id
     */
    @ApiModelProperty(value = "小程序id")
    private String appId;

    /**
     * 微信账号
     */
    @ApiModelProperty(value = "微信账号",required = true)
    private String wxAccount;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;




    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
